Highlights des Upgrades
Der Compiler
Einer der Grב¶nde fב¶r die VerzבÀgerung des Upgrades lag darin, daבƒ wir uns entschlossen
hatten, den Compiler in groבƒen Stב¶cken neu zu implementieren. Und wie heiבƒt es so schבÀn?
Beim zweiten Mal wird alles besser! Hier sind die Resultate.
Die wesentlichen בänderungen des Compilers betreffen die Codeerzeugung. Er erzeugt jetzt
einen schnellen kompakten Code:
* Konstante Teilausdrב¶cke werden erkannt und zur Laufzeit berechnet (constant folding).
* UnnבÀtiges Umkopieren der aktuellen Parameter unterbleibt (Prozeduraufrufe sind schneller).
* Funktionswerte bis 32 Bit GrבÀבƒe kבÀnnen im Register statt auf dem Stack zurב¶ckgegeben
werden.
* Bei der Berechnung von Ausdrב¶cken werden die Register des 68000 zur Zwischen-
speicherung benutzt (bisher wurde auch hier der Stack verwendet).
* Laufvariablen von FOR−Schleifen werden in einem Register gehalten.
* Die Record−Adresse bei WITH−Anweisungen wird im Register abgelegt.
* BereichsΓêÆ und ב£berlaufΓêÆPrב¶fungen werden effizienter codiert.
* FeldΓêÆ und RecordΓêÆZugriffe werden deutlich besser ב¶bersetzt.
* Aufeinander folgende Konstanten als aktuelle Parameter bei Prozeduraufrufen werden
zusammengefaבƒt (Beispiel: GotoXY (2,2) erzeugt eine einzige MOVE.LΓêÆInstruktion!).
* Viele weitere Feinheiten, die wir schon immer als selbstverstבñndlich fב¶r eine gute
Code−Erzeugung bei einem Ein−Pass−Compiler ansahen.
Der Compiler erfב¶llt jetzt vollstבñndig die Sprachdefinition von PIM3 ("Programming in
ModulaΓêÆ2" von Prof. Wirth, 3. Auflage); beispielsweise kבÀnnen nun alle Standardfunktionen,
wie MAX, SIZE, CHR usw. in CONSTΓêÆAusdrב¶cken verwendet werden.
Wuבƒten Sie schon, daבƒ seit mehreren Jahren an einem internationalen Standard fב¶r ModulaΓêÆ2
gearbeitet wird? Dieser hat zum Ziel, daבƒ sowohl die Ungenauigkeiten in Wirths Sprach-
definition als auch die Probleme mit verschiedenen Rechnerarchitekturen gelבÀst werden, so
daבƒ Modula nun auch in der Praxis portabler als C wird. Die Normierung, die in ca. einem
Jahr feststehen dב¶rfte, wird durch das ISO, eine weltweite Vereinigung von Landes-
organisationen wie BSI, IEEE und DIN, vorgenommen.
Im deutschen DINΓêÆArbeitskreis fב¶r ModulaΓêÆ2 sind wir selbst aktives Mitglied und konnten
auch schon eigene Erfahrungen mit unserem Modula mit in den Standard einflieבƒen lassen. So
kבÀnnen wir auch gut beurteilen, welche Spezifikationen der ISOΓêÆNorm so sicher sind, daבƒ wir
sie schon jetzt implementieren kבÀnnen. Solange die Normierung noch nicht abgeschlossen ist,
hat es wenig Sinn, unseren Compiler so weit wie mבÀglich anzupassen, denn einige Dinge der
ISO−Norm erfordern nicht unerhebliche Anpassungen bestehender Modula−Programme. Wir
haben uns deshalb erst einmal darauf beschrבñnkt, die interessanten Erweiterungen der Norm
zu implementieren, soweit sie keine Beeintrבñchtigungen gegenב¶ber PIM3 bzw. unseren
bisherigen Programmen bedeuten.
Die bedeutendsten ISO−Erweiterungen:
* Aggregate (damit kבÀnnen nun beispielsweise bequem ganze Felder und Records initialisiert
werden).
* Der Typ BITNUM, mit dem definiert einzelne Bits angesprochen werden kבÀnnen, sowie die
Funktionen SHIFT und ROTATE zum Verschieben/Rotieren.
* Typen REAL und LONGREAL. LONG ist der bisherige REAL−Typ, REAL ist ein neuer
4 ByteΓêÆReal, der natב¶rlich wieder konkurrenzlos schnell ist.
* StringΓêÆKonstanten kבÀnnen verkettet werden, so daבƒ es kein Problem mehr ist, ControlΓêÆ
Zeichen einzufב¶gen oder einen String ב¶ber mehrere Zeilen zu schreiben.
* Mehrdimensionale offene Felder sind mבÀglich.
Weitere Korrekturen und Erweiterungen beim Compiler:
* Der Mathe−Koprozessor (FPU 68881/2) kann bei ST und TT eingesetzt werden (s.u.).
* Long−Konstanten brauchen nicht mehr mit der Kennunng 'D' oder 'L' versehen werden.
* Wir haben nun einen echten 32 BitΓêÆCompiler, das heiבƒt: keine Einschrבñnkungen mehr bei
lokalen Daten, Records, Arrays usw.
* Zeitintensive Routinen kבÀnnen durch die Deklaration von RegisterΓêÆVariablen wie in
C optimiert werden. Dies kann u.U. Funktionen um das Zweifache beschleunigen.
* Zur besseren Kompatibilitבñt mit anderen ModulaΓêÆCompilern werden aufgezבñhlte RecordΓêÆ
Felder nun in der "richtigen" Reihenfolge abgelegt (natב¶rlich per CompilerΓêÆOption
abschaltbar), ebenso SETs bis 32 Bit (auch BITSET). Per Option kann erreicht werden,
daבƒ LONGΓêÆVariable (z.B. LONGCARD) auf SHORTΓêÆVariable (z.B. CARDINAL) ohne
Zuhilfenahme der SHORTΓêÆFunktion zugewiesen werden kבÀnnen. FORWARD kann auch in
der ב¶blichen PascalΓêÆSyntax verwendet werden.
* Alle Fehler in bezug auf Import/Export sowie opaque und AufzבñhlungsΓêÆTypen sind
behoben. Bei POINTER− und Prozedurtyp−Deklarationen brauchen die Referenz− bzw.
Parametertypen nicht mehr im selben TYPE−Bereich nachdeklariert zu werden sondern
sondern sie lassen sich nun irgendwo im Block nachdeklarieren − so wie es Wirth & ISO
verlangen.
Summa summarum: Wir sind nun auch in punkto Code−Erzeugung stolz auf unseren Compiler.
Und was das bei uns Perfektionisten heiבƒt, kבÀnnen wir hier leider aus wettbewerbsrechtlichen
Grב¶nden nicht weiter ausfב¶hren.
Die Shell
Die Shell bietet nun noch mehr Komfort. Es ist mבÀglich, beliebig viele Dateien zu selektieren,
zu kopieren und zu lבÀschen. Disketten kבÀnnen formatiert werden. Insgesamt wurde die
Bedienung weitgehend den Fבñhigkeiten des Desktops angeglichen. Es kבÀnnen bis zu zehn
Arbeitsdateien simultan installiert werden, zudem erkennt die Shell automatisch, wenn zu
einem auszufב¶hrenden Quelltext ein aktueller, d.h. jב¶ngerer Code existiert und fב¶hrt diesen
dann ohne ein erneutes Compilieren aus. Die gesamte Arbeitsumgebung, also die Position
aller Icons und Fenster sowie alle Einstellungen in den Dialogboxen, kann abgespeichert
werden. Damit ist nun eine bequeme Verwaltung verschiedener Projekte mבÀglich, dies wird
noch durch die MבÀglichkeit der Benutzung von beliebigen BatchΓêÆDateien (in etwa die
bisherigen SHELL.INFΓêÆDateien) unterstב¶tzt. Das Konfigurieren und Bedienen der Umgebung ist
einfacher und zugleich komfortabler geworden, dazu gehבÀrt auch die MבÀglichkeit, alle
Funktionen der Shell wahlweise ב¶ber die Tastatur oder mit der Maus bedienen zu kבÀnnen,
auבƒerdem das leichtere Einbinden beliebiger Editoren.
Das Make
Das Megamax ModulaΓêÆ2 System verfב¶gt nun ב¶ber ein MakeΓêÆUtility. Dieses einfach zu
bedienende Programm ב¶bernimmt die automatische Compilierung aller Dateien eines Projektes,
dabei wird aufgrund der Modulabhבñngigkeiten und der Zeitstempel der einzelnen Quell-
texte und schon vorhandenen Codedateien bestimmt, welche Quellen compiliert werden
mב¶ssen. Nach Ermittlung der zu ב¶bersetzenden Module wird der Compiler dazu automatisch
aufgerufen. So werden nur genau die Module neu ב¶bersetzt, bei denen das notwendig ist.
Auch die Erstellung der Datei, die die Modulabhבñngigkeiten enthבñlt (MakeΓêÆDatei), kann
bequem von einem mitgelieferten Programm durchgefב¶hrt werden; dieses erledigt seine Arbeit
unter Auswertung der einzelnen Importlisten.
Die Benutzung des Make kann in gewohnt bequemer Weise von der Shell, vom Editor oder
gar aus den Batch−Dateien heraus geschehen.
Die Editoren
Da Editoren Geschmackssache sind, liefern wir gleich zwei davon. Der eine Editor arbeitet
unter Verwendung des GEM und vereinigt mבñchtige Befehle mit einer einfachen Bedienung.
Der zweite Editor, der Gepard−Editor, der bereits auf den MeMoX−Disketten zu erhalten
war, arbeitet ohne GEM, belegt dafב¶r aber wenig Speicher und ist sehr schnell, zudem
bietet er nun eine trickreiche Hilfe−Funktion: Er kann automatisch nach exportierten
Bezeichnern der vorhandenen Definitionsmodule suchen und die dazu gehבÀrige Beschreibung
anzeigen. Beide Editoren kבÀnnen mehrere Texte gleichzeitig bearbeiten und erlauben ein
schnelles ב£bersetzen der Module, ohne den Text zu speichern und den Editor zu verlassen.
Der ToolboxΓêÆEditor wird nicht mehr mitgeliefert, Sie kבÀnnen aber den alten weiterverwenden.
Die Bibliothek
Selbst unsere Bibliothek konnte noch verbessert werden und enthבñlt nun ב¶ber 220 Module.
Viele der alten Module wurden erweitert und auch ausfב¶hrlicher dokumentiert. Natב¶rlich
unterstב¶tzen wir die im TOS 1.4 und TTΓêÆTOS hinzugekommenen Routinen, und die Speicher-
verwaltung ist nun unabhבñngig von der TOSΓêÆVersion und dabei auch noch kompakter und
schneller geworden, bietet aber weiterhin den gewohnten Megamax−Komfort. Das System
wurde auch schon erfolgreich auf dem Atari TT eingesetzt.
Es ist nun mבÀglich, alle oder einzelne Definitionsmodule in einer LibraryΓêÆDatei zusam-
menzufassen, aus der sie vom Compiler wבñhrend des Compilierens gelesen werden, was einen
deutlichen Geschwindigkeitsgewinn bringt. Um Speicherplatz auf der Disk zu sparen, ist es
mבÀglich, die Dateien zu komprimieren. Getreu unserem modularen Motto, alle System-
funktionen auch dem Benutzer zugבñnglich zu machen, ist es selbstverstבñndlich, daבƒ sowohl
die Prozeduren zum Komprimieren und Dekomprimieren einzelner Speicherbereiche als auch
die Routinen zur Verwaltung von LibraryΓêÆDateien in dem Benutzer zugבñnglichen Modulen
stehen.
Des weiteren wurde die Bibliothek um Module zur einfachen Verwaltung von Fenstern
beliebigen Inhalts und Fenstern, die komplette Listen in Textform und gewohntem Komfort
darstellen, erweitert. Es gibt neue Module, die die meistgebrauchten Routinen zur GEM−
Programmierung und schnelle Prozeduren zum LבÀschen und Verschieben von Speicherbereichen
enthalten. Der direkte Zugriff auf alle AESΓêÆ und VDIΓêÆDaten ist nun mבÀglich. So kבÀnnen Sie
sowohl neue Funktion selbst aufrufen als auch beispielsweise mehrere Resource−Dateien laden
und verwalten. Ein zu Terminal kompatibles Modul 'Console' benutzt die GEMDOS− statt
der BIOSΓêÆRoutinen, so daבƒ EinΓêÆ/Ausgabeumleitungen, z.B. in sogenannten CommandΓêÆLineΓêÆ
Shells, mבÀglich sind. Eine neue, noch viel bequemere Fehlerbehandlung fב¶r die eigenen
Programme ist hinzugekommen, die sogar Accessories absturzsicher machen kann.
Die bisherigen Module sind ב¶berarbeitet und teilweise stark erweitert worden, wobei darauf
Rב¶cksicht genommen wurde, alte Programme mבÀglichst ohne בänderungen, also durch einfaches
Neuב¶bersetzen, weiterverwenden zu kבÀnnen.
Die Coprozessorunterstב¶tzung
Optional kann nun der FlieבƒkommaΓêÆCoprozessor (68881/2), wie er z.B. von Atari vertrieben
(SFP 004) und auch von Fremdherstellern fב¶r die ST Computer angeboten wird, fב¶r
REAL/LONGREALΓêÆOperationen eingesetzt werden. Ebenso wird der im Atari TT serienmבñבƒig
vorhandene Coprozessor 68882 optimal ausgenutzt.
Dazu gehבÀrt nicht nur die Verwendung des IEEEΓêÆFormates fב¶r Flieבƒkommazahlen und das
Benutzen des Coprozessors bei den einzelnen Bibliotheksfunktionen fב¶r die Flieבƒkomma-
arithmetik, sondern auch das geschickte Ausnutzen der Register des 68882 durch die neue
Codeerzeugung des Compilers. Dadurch wird sogar ohne das manuelle Einsetzen von
RegisterΓêÆVariablen schon eine Steigerung der Ausfב¶hrungszeiten von rechenintensiven
Programmen um bis zu 50% gegenב¶ber den sonst ב¶blichen Einbindungen des Coprozessors
Das Drumherum
Es sind jetzt 40 verschiedene Demo− und Hilfsprogramme vorhanden. Diese Programme
werden im Quelltext mitgeliefert und fב¶hren Ihnen nun noch mehr der teilweise neuen, sehr
vielfבñltigen MבÀglichkeiten des Entwicklungssystems vor Augen und geben Ihnen Beispiele fב¶r
die eigene Programmierung.
Eine neue Version des ResourceΓêÆConstructionΓêÆProgramms fב¶hrt bei mehr als sieben Laufwerken
nicht mehr zu Fehlern.
Das Handbuch
Selbstverstבñndlich sind alle neuen Module, die Editoren, das Make, die Verbesserungen in
Shell, Compiler und Linker im neuen Handbuch dokumentiert. Aber auch die ב¶brigen
Informationen wurden ב¶berarbeitet und ausfב¶hrlicher beschrieben. Im Kapitel ב¶ber den
Compiler sind die Erweiterungen nun deutlich markiert − unterschieden nach ISO− und eigenen
Erweiterungen. Zur Optimierung Ihrer Systemumgebung und Ihrer Programme finden Sie
genauso Hinweise wie zur Anpassung Ihrer alten Module auf das neue System. Damit Sie
nicht nur Bahnhof verstehen, wenn wir von der Base Page sprechen oder Sie zum Booten
auffordern, haben wir ein neues Kapitel mit Begriffserlבñuterungen angefב¶gt. Auch Interna
wie der Vorgang des Linkens und des Make sowie der Aufbau des Bezeichnerbaums in
Definitionsmodulen und die Formate von Strukturen im Speicher sind keine Geheimnisse mehr.
Zur besseren ב£bersichtlichkeit wurden Inhaltsב¶bersicht und Index nochmals vergrבÀבƒert, die
Bedienungsanleitungen zu den Programmen mit Grafiken (Hardcopies) verdeutlicht. Alles
zusammen hebt den Umfang des Handbuchs um 300 auf nun ca. 700 Seiten!
Der Service
Sollte das Handbuch immer noch Fragen offen lassen, so bieten wir Ihnen nun in schwierigen
Fבñllen eine Hotline zu den Programmierern; zudem kבÀnnen Sie die Quelltexte der Bibliotheken
erhalten.
Wo ist der Haken?
Alle diese Verbesserungen haben auch ihren Preis: Die Bibliothek, die Shell und der Compiler
sind gewachsen und belegen damit mehr Speicher − trotz der besseren Codeerzeugung. Shell
und Compiler benבÀtigen nun ca. 170 KB mehr RAM. Das fב¶hrt bei Rechnern mit (nur) einem
Megabyte Speicher zu Problemen. Deswegen liefern wir eine zweite Shell mit, die mehr als
100 KB weniger Speicher benבÀtigt: Bei ihr fehlen die DesktopΓêÆSymbole ΓêÆ Verzeichnisse
kבÀnnen mit dieser Shell nicht mehr angesehen werden. Statt dessen werden die Funktionen
zum LבÀschen, Umbenennen, Arbeitsdatei auswבñhlen usw. in der Menב¶leiste und ב¶ber den
FileΓêÆSelector zur Verfב¶gung gestellt. Ein Programm, der "Filer", dient als Tool, mit dem Sie
dann wie bei der groבƒen Shell die Verzeichnisse in Fenstern sehen und bearbeiten kבÀnnen.
Da andere Komponenten, besonders die Definitionsmodule, kompakter wurden, ist das
bequeme Arbeiten mit einem Megabyte weiterhin mבÀglich.
ב£brigens: Haben Sie schon die Testberichte zu VorabΓêÆVersionen des neuen MegamaxΓêÆSystems
gelesen? Beide Berichte geben uns fast durchweg die besten Noten: ST−Magazin 4/90 und
TOS 7/90. Die wenigen dort angebrachten Mבñngel wurden bereits behoben.
Sie wollen mehr?
KבÀnnen Sie haben. Beispielsweise:
* Die Quelltexte der MOS−Bibliothek (alle Implementationsmodule).
* Die Magic−Library von Peter Hellinger. Das ist eine vereinfachte GEM− und TOS−
Bibliothek, die fב¶r alle ModulaΓêÆCompiler auf dem Atari ST verfב¶gbar ist und die damit
portabel in GEM programmieren kבÀnnen. Die Namensgebung der Bezeichner richtet sich
i.a. nach den ausgeschriebenen Namen im Profibuch. Auבƒerdem umfaבƒt sie einige
High−Level−GEM−Module: Sie haben alle Features, die die C−Library zum Buch "Vom
Anfבñnger zum GEMΓêÆProfi" (Hב¶thig Verlag 1990) der GeiבƒΓêÆBrב¶der (Adimens) bietet und
den modernen GEMΓêÆRichtlinien entsprechen: PopupΓêÆMenב¶s, Menב¶zeilen im Fenster, Tasten-
bedienung bei Buttons in Dialogen, "fliegende Dialoge" (nach den Flydials von Julian
Reschke), VT52−Emulation im Fenster und vieles mehr.
* Eine ADTΓêÆBibliothek, die keine Wב¶nsche mehr offen lassen kann: Bבñume (auch AVL),
Listen (mit Marken), Hash−Tabellen, Stacks und Queues. Die Daten werden nicht, wie
beim MegamaxΓêÆModul Lists, ב¶ber Zeiger verwaltet, sondern kבÀnnen komplett ב¶bergeben
werden. Die Strukturen kבÀnnen in einem Stב¶ck kopiert (zugewiesen) oder in Dateien
geschrieben/gelesen werden. Und so weiter. Die Quelltexte in Modula−2 werden
mitgeliefert.
* Die neue MeMoXΓêÆDisk Nr. 3. Sie enthבñlt u.a. Module fב¶r beliebig groבƒe IntegerΓêÆZahlen
(in Assembler optimiert), Joystickabfragen incl. "Tetrax", einer Nachahmung des bekannten
Spiels "Tetris", eine Matrizenbibliothek, eine Funktion zum Erkennen von Tastenkב¶rzeln in
Menב¶leisten (so daבƒ das Programm eine בänderung der Tastenkommandos in der RSCΓêÆDatei
automatisch ב¶bernimmt), ein kleines TerminalΓêÆProgramm incl. XModemΓêÆRoutinen, ein Modul
zur Mausbeschleunigung, ein alternatives "InOut", das die Ausgaben zusבñtzlich in einer
Datei protokolliert, gepufferte Dateilesefunktionen und noch mehr. Die MeMoX 1 wurde
ב¶brigens aufgelבÀst und die nicht ins ModulaΓêÆSystem ב¶bernommenen Module auf die dritte
Disk ב¶bertragen, die dafב¶r nun doppelseitig ist.
* Oder fehlt Ihnen noch die MeMoX 2? Dann haben sie u.a. versבñumt: Ein richtiges
Real−Time Multitasking−Modul, das auf ganz normale Modula−Prozeduren ohne Assembler
angewendet werden kann, einen FormelΓêÆParser, eine Stoppuhr (AuflבÀsung 5ms), AVLΓêÆ
Bבñume und ein Modul, das in mehreren Textfenster gleichzeitig Eingaben zulבñבƒt: Einfach
das gewב¶nschte Fenster anklicken und drauflosschreiben.
Ihre Wב¶nsche? Unsere Fragen!
Bevor Sie den Bestellschein an uns zurב¶cksenden, beantworten Sie bitte noch die folgenden
Fragen. Wir wollen uns damit in Zukunft besser auf Ihre Bedב¶rfnisse einstellen und so
schneller zu interessanten Updates kommen.
Auf den vorigen Seiten haben Sie erfahren, was Sie beim neuen System erwartet. Wir
stellen Ihnen gleich die Frage, welche Punkte Sie verbessert sehen wollen. Bewerten Sie
jede Frage mit einem Wert von 0 bis 2 und schreiben Sie die Zahl an den Anfang jeder
Zeile.
0 bei keinem Interesse ("Nein, muבƒ nicht sein"),
1 bei bedingtem Interesse ("wבñre nicht ב¶bel"),
2 bei groבƒen Interesse ("Ja, unbedingt").
Also los! Wie wichtig ist es Ihnen...
daבƒ der Compiler bestmבÀglichen Code erzeugt (z.B. wie TurboΓêÆC)?
daבƒ der Compiler optimalen Code fב¶r den 68030 im Atari TT erzeugt?
daבƒ der Compiler dem ISOΓêÆStandard vollstבñndig entspricht?
daבƒ der Compiler objektΓêÆorientierte Erweiterungen (OOP) bietet?
daבƒ der Compiler noch schneller ב¶bersetzt?
daבƒ der Compiler Fehler sammelt statt immer beim ersten Fehler zu stoppen?
ein richtiger Runtime−Debugger (Variable ansehen, Breakpoints usw.)?
eine ISO−Standard−Bibliothek?
eine einfachere ב£bertragung von CΓêÆProgrammen und ΓêÆBeispielen?
eine GEM−/TOS−Bibliothek mit den Original C−Bezeichnernamen?
eine Einbindung von Funktionen aus Turbo−C−Objekt−Modulen/−Bibliotheken?
ein integriertes System (Editor fest in Shell, Shell einfacher)?
mehr komfortable GEM−Module (Resource−, Dialog− und Fensterverwaltung)?
eine spezielle Grafikbibliothek (freie, einfache Grafiken in GEM−Fenstern)?
eine grבÀבƒere mathematische Bibliothek?
eine grבÀבƒere Modulsammlung fב¶r allgemeine Zwecke (abstrakte Datentypen usw.)?
ein einfacher zu bedienendes System/Shell (z.B. fב¶r Schulungen, Gelegenheitsbenutzer)?
eine bessere Dokumentation der Shell, um selbst בänderungen vornehmen zu kבÀnnen?
ein GEM−Editor mit Wordstar−/Tempus−artiger Bedienung?
ein GEM−Editor mit Mac−artiger Bedienung (Cut/Copy/Paste, z.B. Script, 1st Word)?
daבƒ der MeMoX fב¶r eine grבÀבƒere Modulauswahl intensiviert wird?
daבƒ das Handbuch ב¶bersichtlicherer wird?
Wenn Sie weitere Wב¶nsche oder Anmerkungen haben, verwenden Sie dafב¶r bitte ein anderes
Blatt, da dieser Zettel anonym und tabellarisch ausgewertet werden soll!
Und zuletzt verraten Sie uns bitte noch Ihre Systemkonfiguration:
Diskettenlaufwerke: { } einseitig(e) (Anzahl eintragen)
{ } doppelseitig(e)
Festplatte { } (ankreuzen, wenn vorhanden)
Festspeicher Mega Byte
__
Rechner { } ST (520, 1040, Mega)
{ } STE
{ } TT
TOS−Version (1.0, 1.2, 1.4, 1.6 oder 3.0)
__
Monitor { } monochrom (SM 124, auch Atari TT)
{ } farbe (SC 1224, auch Atari TT)
{ } Groבƒbildschirm/Grafikkarte